1d454cbe3e44d789a639df9e23b3912cc63e47ee,so-virtualobject/src/main/java/com/pineone/icbms/so/virtualobject/logic/VirtualObjectManagerLogic.java,VirtualObjectManagerLogic,requestControlDevice,#String#String#String#,95
Before Change
sessionStore.updateSession(session);
VirtualObject virtualObject = searchVirtualObject(voId);
if(virtualObject == null){
session.insertSessionData(DefaultSession.VIRTUALOBJECT_RESULT, DefaultSession.CONTROL_ERROR);
// DBì—? Sessionì?„ ì €ìž¥.
sessionStore.updateSession(session);
return DefaultSession.CONTROL_ERROR;
} else if(VirtualObject.FUNCTIONLITY_ADMIN_NOTI.equals(virtualObject.getFunctionality())) {
session.insertSessionData(DefaultSession.VIRTUALOBJECT_RESULT, VirtualObject.FUNCTIONLITY_ADMIN_NOTI);
// DBì—? Sessionì?„ ì €ìž¥.
sessionStore.updateSession(session);
return VirtualObject.FUNCTIONLITY_ADMIN_NOTI;
}
// 해당 Device ID를 �출
String deviceId = virtualObject.getDeviceId();
// operation -> command SDA 확ì?¸.ê³ ë ¤.. 형ì‹?으로 변경.
// return deviceManager.deviceExecute(deviceId, operation);
logger.debug("Device ID = " + deviceId + " Operation = " + operation + " Session ID = " + sessionId);
session.insertSessionData(DefaultSession.VIRTUALOBJECT_RESULT, DefaultSession.CONTROL_EXECUTION);
sessionStore.updateSession(session);
return virtualObjectControlProxy.executeDevice(deviceId, operation, sessionId);
}
After Change
logger.debug("VirtualObject Id = " + voId + " Operation = " + operation + " Session ID = " + sessionId);
// DB�서 Session� 검색
Session session = null;
if(sessionId != null){
session = sessionStore.retrieveSessionDetail(sessionId);
}
if(session == null){
session = new DefaultSession();
sessionId = session.getId();
}
sessionDataUpdate(sessionStore, session, voId, DefaultSession.VIRTUALOBJECT_KEY);
VirtualObject virtualObject = searchVirtualObject(voId);
if(virtualObject == null){
sessionDataUpdate(sessionStore, session, "The virtualObject does not exist.", DefaultSession.VIRTUALOBJECT_RESULT);
logger.debug("The virtualObject does not exist.");
return "The virtualObject does not exist.";
} else if(ClientProfile.DEVICE_SERVICE_NOTI_TYPE.equals(virtualObject.getFunctionality())) {